/**
 * if let 属于rust的一种语法糖，它允许你快速地处理Option<T>和Result<T, E>类型。
 * 
 * 好还是不好了？ 个人对这些不是太感兴趣，所以就不做过多解释了。
 * 
 */

 /**
 * 年代枚举
 */
#[derive(Debug)] 
enum Age{Year1970,OtherYear}

/**
 * 硬币枚举
 */
enum Coin{一分(Age),二分,五分,一角,贰角,五角,一元}

fn main(){
    let coin = Coin::一分(Age::Year1970);
    match coin{
        Coin::一分(Age::Year1970) => println!("70特有硬币?"),
        _=>println!("不是一分硬币")
    }

    //rust 的语法糖
    if let Coin::一分(Age::Year1970) = coin{
        println!("70特有硬币?");
    }else{  
        println!("不是一分硬币");
    }
    
    //不带 else的if let
    if let Coin::一分(Age::OtherYear)=coin{
        println!("不是70特有硬币");
    }

}